From: Ray Strode Date: Thu, 21 Feb 2013 19:29:56 +0000 (-0500) Subject: main: don't show stage until still frames are loaded X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~4662 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=c562245c167cb7b0d027dc5ff3902db4345a12ca;p=gnome-shell.git main: don't show stage until still frames are loaded We sometimes map the stage before we've loaded a background on it because of a race asynchronously loading the session mode. This manifests as the startup animating starting over a white background. This commit defers showing the stage until after the still frames are loaded. https://bugzilla.gnome.org/show_bug.cgi?id=694321 --- diff --git a/js/ui/layout.js b/js/ui/layout.js index 4d5dd49c4..d4192151a 100644 --- a/js/ui/layout.js +++ b/js/ui/layout.js @@ -573,6 +573,7 @@ const LayoutManager = new Lang.Class({ }, startupAnimation: function() { + global.stage.show(); if (Main.sessionMode.isGreeter) this._startupAnimationGreeter(); else diff --git a/js/ui/main.js b/js/ui/main.js index ee44dcfe7..8b606cbf8 100644 --- a/js/ui/main.js +++ b/js/ui/main.js @@ -89,6 +89,9 @@ function start() { global.logError = window.log; global.log = window.log; + // Hide the stage until we're ready for it + global.stage.hide(); + // Chain up async errors reported from C global.connect('notify-error', function (global, msg, detail) { notifyError(msg, detail); });